﻿using System;
using System.Configuration;
using System.Windows;
using System.Windows.Controls;

namespace FrontDisplay
{
    public interface IPlugin
    {
        event Action<IPlugin> Activated;

        event Action<IPlugin> Deactivated;

        bool IsActive { get; }

        string Title { get; }

        UIElement MenuButton { get; }

        void Start();

        void Stop();

        void ThemeChanged();

        Control PageControl { get; }

        UIElement TopControl { get; }

        UIElement BottomControl { get; }

        UIElement ParametersControl { get; }

        ApplicationSettingsBase Config { get; }
        
        void SaveConfig(UIElement element);
    }
}